A flat telecommunications network is a network in which all network entities communicate with each other without going through any intermediary hardware devices, such as a bridge or router. A flat network is one network segment, where each network entity can access the others using the datalink layer. A flat network topology is adequate for very small networks. With a flat network design, there is no hierarchy. Each network device has essentially the same function, and the network is not divided into layers or modules. A flat network topology is easy to design and implement, and it is easy to maintain, as long as the network stays small. When the network grows, however, a flat network is impractical.
Large networks are segmented into broadcast domains to contain broadcast traffic and to improve performance. A segmented network (that includes a few broadcast domains) has a hierarchy of layers. A hierarchical network has a topology of discrete layers. Each layer can be focused on specific functions, allowing the designer to choose the right systems and features for the layer.
For purposes of the present invention, a hierarchical network includes a layer of services or flows which can be grouped into a higher layer of trunks. The term trunks, as used herein, includes also tunnels, trails, and any other similar grouping of services or flows for routing purposes. The term flows will be used herein to also include services.
A typical hierarchical topology model consists of a core layer of routers and switches, that are optimized for availability and performance, and an access layer, that connects users via lower-end switches and wireless access points. A network core is the central part of a telecom network that provides various services to customers who are connected by the access network. Connections of devices in a core layer are associated with tunnels. Tunneling is a technique for connecting two networks via a third transit network. The two networks send their data via the third network's connections. Tunneling works by encapsulating a network protocol within packets carried by the third network.
A flow is an end-to-end connection between devices in the same access network or between devices in different access networks. Each flow is associated with specific source and destination and QoS (Quality of Service) requirements. All the flows in a tunnel follow the same path in the network, where a path is a set of links. Therefore, a tunnel determines the path of a flow in the network topology. In case a flow connects devices in different access networks, the packets associated with the flow enter the core network while encapsulated into a tunnel. All the services in the core network are provisioned in the tunnel. Each edge device may be an endpoint of flows that follow different network paths and, therefore, are in different tunnels. It will be appreciated that the number of flows is significantly higher than the number of paths that are used by those flows.
One example of a hierarchical network is the Provider Backbone Bridged Network (PBBN) defined in IEEE 802.1ah standard. A new technology called Provider Backbone Transport (PBT) can be employed within the service domain of PBBN to allow configuration of Ethernet trunks facilitating guaranteed QoS. The services are provisioned inside a trunk. Thus, the network is not flat, but there is a level of trunks, and each trunk aggregates a set of services inside.
Another example is a new recommendation by the International Telecommunication Union (ITU) Standardization Sector for Transport Multi Protocol Label Switching (T-MPLS) layer network. The T-MPLS layer network provides the transport of information through a T-MPLS trail between T-MPLS access points. Here, also, there is a hierarchy of sub layers.
U.S. patent application Ser. No. 11/346,147, to the same Applicant, entitled “Admission Control for Telecommunications Networks” (ACTN), describes a method and a system for admission control for telecommunications networks. The ACTN exemplary embodiment suggests a single dynamic bandwidth allocation algorithm, preferably running on each proprietary edge device, for allocating bandwidth to all flows in the network, based on global traffic statistics, by calculating a bandwidth available for best effort from the total available bandwidth and provisioned committed bandwidth of the network, and allocating the bandwidth available for best effort between the flows in the network substantially proportionally to provisioned best effort bandwidth.
Networks consistently grow and the number of services or flows in a network increases rapidly. Therefore, admission control methods that are based on services or flows, only, are limited, as they do not scale well to the hierarchical model. Therefore, it would be desirable to have an admission control and bandwidth allocation method for hierarchical networks that is scalable and based on a hierarchical model.